package com.rdzn.mall.portal.service.impl;

import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.rdzn.mall.center.entity.PmsSkuStock;
import com.rdzn.mall.center.service.IPmsSkuStockService;
import com.rdzn.mall.portal.domain.Sku;
import com.rdzn.mall.portal.domain.SkuStock;
import com.rdzn.mall.portal.service.ISkuStockService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class SkuStockServiceImpl implements ISkuStockService {

    @Autowired
    private IPmsSkuStockService pmsSkuStockService;

    @Override
    public SkuStock getByProductSkuId(Integer productSkuId) {
        SkuStock skuStock = new SkuStock();
        PmsSkuStock pmsSkuStock = pmsSkuStockService.getById(productSkuId);
        if (pmsSkuStock != null){
            BeanUtils.copyProperties(pmsSkuStock, skuStock);
            if (StringUtils.isNotBlank(skuStock.getSpData())){
                List<Sku> skus = JSONArray.parseArray(skuStock.getSpData(), Sku.class);
                StringBuilder skuStr = new StringBuilder();
                for (int j = 0; j < skus.size(); j++) {
                    skuStr.append(skus.get(j).getValue());
                }
                skuStock.setSku(skuStr.toString());
            }
        }
        return skuStock;
    }
}
